/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controller;

import java.sql.SQLException;
import java.util.Date;
import java.util.LinkedList;
import model.dto.LoteSementeDTO;
import model.exception.MissingIdException;
import model.exception.NoChangesOnUpdateException;
import model.exception.NotNullFieldsException;
import model.handler.LoteSementeHandler;

/**
 *
 * @author Gabriel
 */
public class LoteSementeController {
    
    LoteSementeHandler loteSementeHandler;

    public LoteSementeController() throws SQLException, ClassNotFoundException {
        loteSementeHandler = new LoteSementeHandler();
    }

    public LinkedList<LoteSementeDTO> pesquisaLoteSemente(Integer id,
                                                          Date dataColeta,
                                                          Boolean flgEncerrado,
                                                          Integer idMatriz,
                                                          String nomeEspecie) throws SQLException {
        return loteSementeHandler.pesquisaLoteSemente(id, dataColeta, flgEncerrado, idMatriz, nomeEspecie);
    }

    public void cadastraLoteSemente(LoteSementeDTO loteSementeDTO) throws SQLException, NotNullFieldsException {
        loteSementeHandler.cadastraLoteSemente(loteSementeDTO);
    }

    public void atualizaLoteSemente(LoteSementeDTO loteSementeDTO,
                                    boolean atualizaIdColeta,
                                    boolean atualizaPesoInicial) throws MissingIdException, NotNullFieldsException, NoChangesOnUpdateException, SQLException {
        loteSementeHandler.atualizaLoteSemente(loteSementeDTO, atualizaIdColeta, atualizaPesoInicial);
    }
}
